package com.egao.common.module.cms.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.egao.common.core.web.JsonResult;
import com.egao.common.core.web.PageParam;
import com.egao.common.core.web.PageResult;
import com.egao.common.module.cms.entity.Article;

import javax.servlet.http.HttpServletRequest;
import java.util.List;

/**
 * 文章接口
 * @author pyx
 */
public interface ArticleService extends IService<Article> {
    /**
     * 分页查询文章信息
     * @param pageParam 分页对象
     * @return
     */
    List<Article> listPage(PageParam<Article> pageParam);

    /**
     * 添加文章
     * @param article 文章信息
     * @return
     */
    JsonResult insertArticle(Article article);

    /**
     * 修改文章信息
     * @param article 文章信息
     * @return
     */
    JsonResult updateArticle(Article article);

    /**
     * 根据id删除文章
     * @param id 文章id
     * @return
     */
    JsonResult deleteArticle(Integer id);

    /**
     * 根据id查询单个文章信息
     * @param id 文章id
     * @return
     */
    JsonResult getId(Integer id);

    /**
     * 查询所有原文章
     * @return
     */
    List<Article> oldArticleList();

    /**
     * 查询所有文章
     * @return
     */
    List<Article> listAll();

    /**
     * 查询栏目下置顶文章个数
     * @param categoryId 栏目id
     * @return List<Article>
     */
    List<Article> topFlagNum(Integer categoryId);
}
